def bubble_sort(arr):
    """用非递归方法实现冒泡排序"""
    n = len(arr)

    # 外层循环控制排序的轮数
    for i in range(n):
        # 内层循环控制每轮的比较和交换
        # 每轮冒泡后，最大的元素会被放到数组末尾
        for j in range(0, n - i - 1):
            # 如果前一个元素大于后一个元素，则交换它们
            if arr[j] > arr[j + 1]:
                arr[j], arr[j + 1] = arr[j + 1], arr[j]

    return arr


# 测试冒泡排序
test_array = [64, 34, 25, 12, 22, 11, 90]
print("原始数组:", test_array)
sorted_array = bubble_sort(test_array)
print("排序后数组:", sorted_array)